package com.codes.core.common.enumtype;

public enum MenuType {


    /**
     * 1	用户中心
     * 2	系统设置
     * 3	工单管理
     * 4	消息资讯
     *          returnMap.put("memberCenter",userMu);
     *         returnMap.put("contentManagement",facilityMu);
     *         returnMap.put("systemeSttings",sysMu);
     *         returnMap.put("seraphApi",docMu);
     */
    //

    memberCenter(1 ,"memberCenter"),
    systemeSttings(2 ,"systemeSttings"),
    contentManagement(3 ,"contentManagement"),
    seraphApi(4 ,"seraphApi"),




    yuliu(5 ,"预留");




    /** code */
    private int code;

    /** 显示标签 */
    private String label;

    /**
     * 构造器，必须私有
     * @param code
     */
    MenuType(int code, String label){
        this.code = code;
        this.label = label;
    }

    /**
     * 获取code的文本
     * @param code
     * @return
     */
    public static String getLabelByCode (int code){
        for (MenuType enuma : MenuType.values()){
            if (enuma.getCode() == code){
                return enuma.getLabel();
            }
        }
        return "未知枚举项";
    }
    /**
     * 根据文本获取code
     */
    public static int getCodeByLabel(String label){
        for(MenuType enuma : MenuType.values()){
            if(enuma.getLabel().equals(label)){
                return enuma.getCode();
            }
        }
        return -1;

    }

    /**
     * 根据code获取枚举
     */
    public static MenuType getRoleByCode(int code){
        for(MenuType enuma : MenuType.values()){
            if(enuma.getCode() == code){
                return enuma;
            }
        }
        return null;
    }

    public String toString(){
        return label;
    }

    public String getLabel() {
        return label;
    }

    public int getShort(){
        return this.code;
    }

    public int getCode(){
        return this.code;
    }


}
